Today I took a test at my university about C. The question was:
What is the difference between the pointer to the int value and the int array, i.e., int *p vs. int p[]?
My answer was that there is a diffence. You can change the value of the pointer (int*) and sizeof(array) return the whole size of the array not just size of the pointer. But when I use it as function arguments then they are both viewed as int*.
My teacher is saying that it is wrong and they are the same.
Who is right? Please take into consideration the whole question because maybe I interpreted it in a wrong way.